#!/bin/sh

printf 'CFLAGS =
LDFLAGS =
CFILES = $(basename $(wildcard *.c))
LIB = %s
CFLAGS += -g -I../\

.PHONY: all clean $(CFILES)

all: $(LIB)

clean:
	rm -f  *.o *.lo *.a *.so.1.0.1 *.~
$(LIB):  $(LIB).so.1.0.1 $(LIB).a

$(LIB).so.1.0.1: $(addsuffix .lo, $(CFILES))
	$(CC) $(LDFLAGS) -shared -Wl,-soname,$(LIB).so.1 -o $(LIB).so.1.0.1 $^

$(LIB).a: $(addsuffix .o, $(CFILES))
	$(AR) -rcs $(LIB).a $^

%%.o: %%.c
	$(CC) -c $(CFLAGS) -o $@ $(patsubst %%.o,%%.c,$@)

%%.lo: %%.c
	$(CC) -c -fPIC $(CFLAGS) -o $@  $(patsubst %%.lo,%%.c,$@)

$(CFILES):
	$(CC) -c $(CFLAGS) -o $@.o $@.c
	$(CC) -c -fPIC $(CFLAGS) -o $@.lo  $@.c
' "$1"
